-
Notifications
You must be signed in to change notification settings - Fork 1.5k
[PM-29604] [PM-29605] [PM-29606] Support premium subscription page redesign #6821
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[PM-29604] [PM-29605] [PM-29606] Support premium subscription page redesign #6821
Conversation
…cription/reinstate
…n starting premium subscription
…ice.created for subscription cycles only
|
New Issues (1)Checkmarx found the following issues in this Pull Request
|
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## main #6821 +/- ##
==========================================
+ Coverage 55.26% 55.29% +0.02%
==========================================
Files 1939 1949 +10
Lines 86224 86552 +328
Branches 7705 7727 +22
==========================================
+ Hits 47655 47860 +205
- Misses 36777 36901 +124
+ Partials 1792 1791 -1 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|


🎟️ Tracking
https://bitwarden.atlassian.net/browse/PM-29604
https://bitwarden.atlassian.net/browse/PM-29605
https://bitwarden.atlassian.net/browse/PM-29606
📔 Objective
This PR provides the data and operations necessary to complete our premium subscription page redesign.
Get Premium Subscription
UserGET /account/billing/vnext/subscriptionendpointReinstate Premium Subscription
POST /account/billing/vnext/subscription/reinstateendpointPay for New Premium Subscription with PayPal Immediately
BraintreeService.PayInvoicemethod that pays a Stripe invoice with Braintree. Logic mostly taken from the Billing application and refined.CreateCloudHostedPremiumSubscriptionCommandto immediately pay the open invoice with Braintree if the user paid with PayPal.invoice.createdwebhook handler to also use theBraintreeServiceto pay the open invoice, but only for subscription cycling events, not subscription creation events which is now handled by the bullet point above.Update Premium Storage
UpdatePremiumStoragecommand to not use prorations, opting instead to charge and credit the customer immediately when they make storage additions or reductions.PUT /account/billing/vnext/subscription/storageMisc
dotnet formatin the last commit📸 Screenshots
Screen.Recording.2026-01-09.at.1.32.50.PM.mov
⏰ Reminders before review
🦮 Reviewer guidelines
:+1:) or similar for great changes:memo:) or ℹ️ (:information_source:) for notes or general info:question:) for questions:thinking:) or 💭 (:thought_balloon:) for more open inquiry that's not quite a confirmed issue and could potentially benefit from discussion:art:) for suggestions / improvements:x:) or:warning:) for more significant problems or concerns needing attention:seedling:) or ♻️ (:recycle:) for future improvements or indications of technical debt:pick:) for minor or nitpick changes